from flask import Flask,render_template
from bokeh.resources import INLINE
from bokeh.embed import components
from picture import mpg ,vbar_demo

app =Flask(__name__)
@app.route('/')
def index():
    return render_template('index.html')

@app.route('/vbar')
def vbar():
    p = vbar_demo()
    titles = ('tou1','tou2','tou3','tou4','tou5')
    contents = [['x',1, 2, 3, 4],['y',1.7, 2.2, 4.6, 3.9]]
    # 通用
    js_resources = INLINE.render_js()
    css_resources = INLINE.render_css()
    script, div = components(p)
    html = render_template(
        'vbar.html',
        plot_script=script,
        plot_div=div,
        js_resources=js_resources,
        css_resources=css_resources,
        the_titles=titles,
        the_contents=contents
    )
    return html

@app.route('/mpg')
def mpg_view():
    '''
    调用绘图函数
    '''
    p = mpg()
    p2 = vbar_demo()

    js_resources = INLINE.render_js()
    css_resources = INLINE.render_css()
    script, div = components([p,p2])

    html = render_template(
        'mpg.html',
        plot_script=script,
        plot_div=div,
        js_resources=js_resources,
        css_resources=css_resources
    )
    return html
if __name__ == '__main__':
    app.run()